var over = 0;
var id = 0;               // 订单ID
var currentUserId = 0;    // 当前用户
var pageBreakPoint = [];  // 分页点
var currency = "元";
var taxRateText = "";
var _taxRate = 0;

var thisPage = {
    first: 0,
    isPreparedBy: false,
    // 初始化页面
    OnPageLoad: function () {
        pageBreakPoint = [];
        thisPage.PageInit();
        // 用于导出excel文件
        $('<iframe id="wxIframe-post-form" name="_wxIframe-post-form" style="position:absolute; top:-9999px; left:-9999px" src="javascript:false"></iframe>').appendTo(document.body);
        let $form = $('<form id="wxForm-post-form" name ="_wxForm-post-form" method="POST" action ="" target="_blank" style="position:absolute; top:-1200px; left:-1200px"></form>');
        $('<input type="hidden" id="HeaderKey" name="_HeaderKey" value="" />').appendTo($form);
        $('<input type="hidden" id="Flag" name="_Flag" value="" />').appendTo($form); // 区分正常页面显示还是报表导出
        $('<input type="hidden" id="CurrentUser" name="_CurrentUser" value="" />').appendTo($form);
        $('<input type="hidden" id="GroupMode" name="_GroupMode" value="" />').appendTo($form);
        $('<input type="hidden" id="SortMode" name="_SortMode" value="" />').appendTo($form);
        $('<input type="hidden" id="PageBreakPoint" name="_PageBreakPoint" value="" />').appendTo($form);
        $('<input type="hidden" id="ShowTotalQuantity" name="_ShowTotalQuantity" value="0" />').appendTo($form);
        $('<input type="hidden" id="PrintFooter" name="_PrintFooter" value="1" />').appendTo($form);
        $('<input type="hidden" id="FileType" name="_FileType" value="1" />').appendTo($form);                  // 导出用文件格式
        $('<input type="hidden" id="PrintTemplate" name="_PrintTemplate" value="" />').appendTo($form);         // 打印用模版
        $('<input type="hidden" id="PrintCompanyTitle" name="_PrintCompanyTitle" value="" />').appendTo($form); // 打印用公司抬头

        $('<input type="hidden" id="PringPageRows" name="_PringPageRows" value="8" />').appendTo($form);
        $('<input type="hidden" id="PrintRowStart" name="_PrintRowStart" value="0" />').appendTo($form);
        $('<input type="hidden" id="PrintRowEnd" name="_PrintRowEnd" value="0" />').appendTo($form);
        $form.appendTo(document.body);
    },
    GetFilters: function () {
        let _params = {};
        _params["HeaderId"] = parseInt(id);
        _params["SortMode"] = $.trim($("#ConditionSortMode").val());
        _params["GroupMode"] = $.trim($("#ConditionGroupMode").val());
        _params["Flag"] = 3;
        _params["CurrentUserId"] = currentUserId;
        return JSON.stringify(_params);
    },
    PageInit: function () {
        thisPage.SetLangTemplate(parseInt($("#ConditionPrintTemplate").val()));
        $.ajax({
            type: "POST",
            url: window.basePath + "/purchase/po/fetchPrintPreviewData.html",
            timeout: 30 * 1000,
            data: thisPage.GetFilters(),
            contentType: "application/json; charset=utf-8",
            dataType: "json",
            beforeSend: function () {
            }
        }).done(function (data) {
            let item = data.HeaderEntity;
            currency = item.currencySymbol;
            $("#PoNo").text(item.poNo);
            $("#PreparedByName").text(item.purchasedByName);
            $("#SupplierName").text(item.supplierName);
            $("#Attn").text(item.attn);
            $("#DateOfSigning").text(item.signedDate);
            $("#Fax").text(item.fax);
            $("#DateOfArrival").text(item.orderArrivalDate);
            $("#Address").text(item.address);
            $("#AttnTel").text(item.tel);
            $("#Description").text(item.description);
            $("#QuantityOfLimited").text(item.quantityOfLimited);
            $("#GramWeight").text(item.gramWeight);
            $("#TermsOfPayment").text(item.termsOfPayment);
            //$("#QualityStandard").html(item.qualityStandard === null ? '' : item.qualityStandard.replace(/\n/g, '<br/>'));
            $("#QualityStandard").html(item.qualityStandard === null ? '' : item.qualityStandard);
            $("#PerformedPlace").html(item.performedPlace === null ? '' : item.performedPlace.replace(/\n/g, '<br/>'));
            $("#PartB").text(item.supplierName);
            $("#AddrB").text(item.address);
            $("#TelB").text(item.tel);
            $("#FaxB").text(item.fax);
            $("#RepA").text(item.purchasedByName);
            $("#RepB").text(item.attn);
            $("#SignedDateA").text(getCurrentDate());
            $("#SignedDateB").text(getCurrentDate());
            _taxRate = item.taxRate;
            let hasFreight = item.freightFlag === true ? "含运费" : "不含运费";
            if (parseFloat(item.taxRate) === 0) {
                taxRateText = "不含税、" + hasFreight;
            } else {
                taxRateText = "含" + item.taxRateText + "税、" + hasFreight;
            }
            
            if (parseInt($("#UserId").val()) !== parseInt(item.purchasedBy)) {
                if ($("#RoleName").val().indexOf("系统管理员") === -1) {
                    thisPage.isPreparedBy = false;
                } else {
                    thisPage.isPreparedBy = true;
                }
            } else {
                thisPage.isPreparedBy = true;
            }
            // 显示明细数据
            linesHandler.BuildDataTable(data.poPrintLinesData);
        }).fail(function (data) {
            $('#loading').hide();
            ajaxError(data, 1);
        }).always(function () {
            if (parseInt(thisPage.first) === 0) {
                thisPage.first = 1;
            }
            pageBreakPoint = [];
        });
    },
    // 改变公司抬头
    ChageCompany: function () {
        switch (parseInt($("#CompanyTitle").val())) {
            case 1:
                $("#_company_01").text("美香服饰（大连）有限公司");
                $("#_company_02").text("MEIXIANG CLOTHING（DALIAN)）CO.,LTD.");
                $("#_company_03").text("美香服饰（大连）有限公司");
                $("#_company_04").text("美香服饰（大连）有限公司");
                break;
            case 2:
                $("#_company_01").text("萬益德（大連）實業有限公司");
                $("#_company_02").text("WANYIDE（DALIAN)）INDUSTRIAL CO.,LTD.");
                $("#_company_03").text("萬益德（大連）實業有限公司");
                $("#_company_04").text("萬益德（大連）實業有限公司");
                break;
            case 3:
                $("#_company_01").text("泰美(大连) 时装有限公司");
                $("#_company_02").text("TAIME (Dalian) FASHION CO.,LTD.");
                $("#_company_03").text("泰美(大连) 时装有限公司");
                $("#_company_04").text("泰美(大连) 时装有限公司");
                break;
            case 4:
                $("#_company_01").text("萬益德实业有限公司");
                $("#_company_02").text("WANYIDE（DALIAN)）INDUSTRIAL CO.,LTD.");
                $("#_company_03").text("萬益德实业有限公司");
                $("#_company_04").text("萬益德实业有限公司");
                break;
        }
    },
    // 设置模版
    SetLangTemplate: function (langFlag) {
        switch (parseInt(langFlag)) {
            case 1:     // 中文
                $("#lab_01").text("订单编号：");
                $("#lab_02").text("合同履行地：");
                $("#lab_03").text("制单人：");
                $("#lab_04").html("供 应 商<br/>名 　 称");
                $("#lab_05").text("联 系 人");
                $("#lab_06").text("落单日期");
                $("#lab_07").text("传　   真");
                $("#lab_08").text("交货日期");
                $("#lab_09").text("供应商住所地");
                $("#lab_10").text("联系电话");

                $("#list_header_01").text("款 号");
                $("#list_header_02").text("货品名称");
                $("#list_header_03").text("货号");
                $("#list_header_04").text("规格");
                $("#list_header_05").text("颜色");
                $("#list_header_06").text("色号");
                $("#list_header_07").text("单位");
                $("#list_header_08").text("数量");
                $("#list_header_09").text("单价(" + currency + ")");
                $("#list_header_10").text("金额(" + currency + ")");
                $("#list_header_11").text("备注");

                $("#lab_11").text("说　　明");
                $("#lab_12").text("数量许可");
                $("#lab_13").text("克重");
                $("#lab_14").html("付款条件");
                $("#lab_15").text("品质要求");
                $("#lab_16").text("合同要求");
                $("#lab_17").text("甲方：");
                $("#lab_18").text("乙方：");
                $("#lab_19").text("签章：");
                $("#lab_20").text("签章：");
                $("#lab_21").text("日期：");
                $("#lab_22").text("日期：");
                break;
            case 2:     // 英文
                $("#lab_01").text("ORDER NO.：");
                $("#lab_02").text("PLACE OF CONTRACT：");
                $("#lab_03").text("PREPARED BY：");
                $("#lab_04").html("MANUFACTURER");
                $("#lab_05").html("CONTACT<br/>PERSON");
                $("#lab_06").html("ORDER<br/>DATE");
                $("#lab_07").text("FAX");
                $("#lab_08").html("DELIVERY<br/>DATE");
                $("#lab_09").html("MANUFACTURER<br/>ADDRESS");
                $("#lab_10").text("Tel. ");

                $("#list_header_01").text("CONTRACT NO.");
                $("#list_header_02").text("DESCRIPTION");
                $("#list_header_03").text("COMMODITY NO.");
                $("#list_header_04").text("SPECIFICATION");
                $("#list_header_05").text("COLOR");
                $("#list_header_06").html("COLOR<br/>NO.");
                $("#list_header_07").text("UNIT");
                $("#list_header_08").text("QUANTITY");
                $("#list_header_09").text("UNITPRICE(" + currency + ")");
                $("#list_header_10").text("AMOUNT(" + currency + ")");
                $("#list_header_11").text("REMARKS");

                $("#lab_11").text("REMARKS");
                $("#lab_12").html("QUANTITY<br/>ALLOWANCE");
                $("#lab_13").text("G/M²");
                $("#lab_14").html("TERM OF<br/>PAYMENT");
                $("#lab_15").html("QUALITY<br/>REQUIREMENT");
                $("#lab_16").text("NOTE");
                $("#lab_17").text("PURCHASED BY");
                $("#lab_18").text("SELLER ");
                $("#lab_19").text("REP NAME");
                $("#lab_20").text("REP NAME");
                $("#lab_21").text("DATE");
                $("#lab_22").text("DATE");
                break;
        }
    },
    // html打印
    DoPreview: function () {
        if (parseInt($.trim($("#ConditionFileType").val())) !== 0) {
            thisPage.OnExport();
        } else {
            // 设置打印次数
            let _params = {};
            _params["PoId"] = parseInt(id);

            $.ajax({
                type: "POST",
                url: window.basePath + "/purchase/po/header/updatePrintFlag.html",
                timeout: 30 * 1000,
                data: JSON.stringify(_params),
                contentType: "application/json; charset=utf-8",
                dataType: "json",
                beforeSend: function () {
                }
            }).done(function (data) {
            }).fail(function (data) {
                $('#loading').hide();
                ajaxError(data, 1);
            }).always(function () {
            });
            // 打印
            _html_content = window.document.body.innerHTML;
            _print_header_start = "<!--headerstart--->";
            _print_header_end = "<!--headerend-->";
            _print_header_content = _html_content.substr(_html_content.indexOf(_print_header_start));
            _print_header_content = _print_header_content.substring(0, _print_header_content.indexOf(_print_header_end));
            _print_footer_start = "<!--footerstart--->";
            _print_footer_end = "<!--footerend-->";
            _print_footer_content = _html_content.substr(_html_content.indexOf(_print_footer_start));
            _print_footer_content = _print_footer_content.substring(0, _print_footer_content.indexOf(_print_footer_end));
            _print_body_header = '<table id="tabData" style="width:1140px; margin:-1px auto 0px auto; font-size:16px; text-align:left;">' +
                    '    <colgroup>' +
                    '        <col style="width:110px;"/>' +
                    '        <col />' +
                    '        <col style="width:170px;"/>' +
                    '        <col style="width:80px;"/>' +
                    '        <col style="width:150px;"/>' +
                    //'        <col style="width:90px;"/>' +
                    '        <col style="width:70px;"/>' +
                    '        <col style="width:90px;"/>' +
                    '        <col style="width:90px;"/>' +
                    '        <col style="width:90px;"/>' +
                    '        <col style="width:120px;"/>' +
                    '    </colgroup>' +
                    '    <tbody>';
            _print_body_footer = '</tbody></table>';
            var _printInnerHTML = '';
            var _printDataList = '';
            var pageIndex = 1; // 当前页
            var pageTotal = $("#tabData").find("tr.page-break").length + 1; // 总页数
            var _pages = "";
            var pageTotalQuantity = 0;
            var pageTotalAmount = 0;
            var totalQuantity = 0;
            var totalAmount = 0;
            if ($("#tabData").find("tr.row__clicked").length) {
                $("#tabData").find("tr.row__clicked").removeClass("row__clicked");
            }
            let _rows_index = 0;
            $("#tabData").find("tr").each(function (index) {
                _rows_index = _rows_index + 1;
                if ($(this).hasClass("page-break") || index === $("#tabData").find("tr").length - 1) {
                    if (_rows_index < 16) {
                        for (let j = 0; j < (16 - _rows_index); j++) {
                            _printDataList += '<tr>';
                            _printDataList += '<td style="font-size:16px;" class="cell">&nbsp;</td><td class="cell"></td><td class="cell"></td><td class="cell"></td><td class="cell"></td><td class="cell"></td><td class="cell"></td><td class="cell"></td><td class="cell"></td><td class="cell"></td>';
                            _printDataList += '</tr>';
                        }
                    }
                    _rows_index = 0;
                    // 合计栏 中文模版
                    if (parseInt($("#ConditionPrintTemplate").val()) === 1) {
                        _printDataList += '<tr style="height:50px;">';
                        _printDataList += '<td style="text-align:center; font-weight:bold;" class="cell"></td>';
                        if (parseInt($("#ConditionShowTotalQuantity").val()) === 0) {
                            _printDataList += '<td style="text-align:center; font-weight:bold;" colspan="4" class="cell">' + taxRateText + '</td>';
                            _printDataList += '<td style="text-align:center; font-weight:bold; min_height:30px;" class="cell"></td>';
                        }
                        if (parseInt($("#ConditionShowTotalQuantity").val()) === 1) {
                            _printDataList += '<td style="text-align:center; font-weight:bold; font-size:16px;" colspan="4" class="cell">' + taxRateText + '</td>';
                            _printDataList += '<td style="text-align:center; font-weight:bold; font-size:16px; min_height:30px;" class="cell">合计数量</td>';
                            _printDataList += '<td style="text-align:center; font-size:16px;" class="cell">' + pageTotalQuantity + '</td>';
                        }
                        _printDataList += '<td style="text-align:center; font-weight:bold; font-size:16px; padding-left:2px;" class="cell">合计金额</td>';
                        if (thisPage.isPreparedBy === true) {
                            _printDataList += '<td style="text-align:center; font-size:16px;" class="cell">' + pageTotalAmount.toFixed(2) + '</td>';
                        } else {
                            _printDataList += '<td style="text-align:center; font-size:16px;" class="cell"></td>';
                        }
                        _printDataList += '<td style="text-align:left; font-size:16px; padding-left:2px;" class="cell"></td>';
                        _printDataList += '</tr>';

                        // 最后一页并且有多页情况 加上总计
                        if ((index === $("#tabData").find("tr").length - 1) && $("#tabData tr.page-break").length > 0) {
                            _printDataList += '<tr style="height:50px;">';
                            _printDataList += '<td style="text-align:center; font-weight:bold;" class="cell"></td>';
                            if (parseInt($("#ConditionShowTotalQuantity").val()) === 0) {
                                _printDataList += '<td style="text-align:center; font-weight:bold;" colspan="46" class="cell"></td>';
                                _printDataList += '<td style="text-align:center; font-weight:bold; min_height:30px;" class="cell"></td>';
                            }
                            if (parseInt($("#ConditionShowTotalQuantity").val()) === 1) {
                                _printDataList += '<td style="text-align:center; font-weight:bold;" colspan="4" class="cell"></td>';
                                _printDataList += '<td style="text-align:center; font-weight:bold; font-size:16px; min_height:30px;" class="cell">总数量</td>';
                                _printDataList += '<td style="text-align:center; font-size:16px;" class="cell">' + totalQuantity + '</td>';
                            }
                            _printDataList += '<td style="text-align:center; font-weight:bold; font-size:16px; padding-left:2px;" class="cell">总金额</td>';
                            _printDataList += '<td style="text-align:center; font-size:16px;" class="cell">' + totalAmount.toFixed(2) + '</td>';
                            _printDataList += '<td style="text-align:left; font-size:16px; padding-left:2px;" class="cell"></td>';
                            _printDataList += '</tr>';
                        }
                    }
                    //  合计栏 英文模版
                    if (parseInt($("#ConditionPrintTemplate").val()) === 2) {
                        _printDataList += '<tr style="height:50px;">';
                        _printDataList += '<td style="text-align:center; font-weight:bold;" class="cell"></td>';
                        if (parseInt($("#ConditionShowTotalQuantity").val()) === 0) {
                            _printDataList += '<td style="text-align:center; font-weight:bold;" colspan="4" class="cell"></td>';
                            _printDataList += '<td style="text-align:center; font-weight:bold; min_height:30px;" class="cell"></td>';
                        }
                        if (parseInt($("#ConditionShowTotalQuantity").val()) === 1) {
                            _printDataList += '<td style="text-align:center; font-weight:bold;" colspan="4" class="cell"></td>';
                            _printDataList += '<td style="text-align:center; font-weight:bold; min_height:30px;" class="cell">AMOUNT</td>';
                            _printDataList += '<td style="text-align:center;" class="cell">' + pageTotalQuantity + '</td>';
                        }
                        _printDataList += '<td style="text-align:center; font-weight:bold; padding-left:2px;" class="cell">AMOUNT</td>';
                        if (thisPage.isPreparedBy === true) {
                            _printDataList += '<td style="text-align:center;" class="cell">' + pageTotalAmount.toFixed(2) + '</td>';
                        } else {
                            _printDataList += '<td style="text-align:center;" class="cell"></td>';
                        }
                        _printDataList += '<td style="text-align:left; padding-left:2px;" class="cell"></td>';
                        _printDataList += '</tr>';

                        // 最后一页并且有多页情况 加上总计
                        if ((index === $("#tabData").find("tr").length - 1) && $("#tabData tr.page-break").length > 0) {
                            _printDataList += '<tr style="height:50px;">';
                            _printDataList += '<td style="text-align:center; font-weight:bold;" class="cell"></td>';
                            if (parseInt($("#ConditionShowTotalQuantity").val()) === 0) {
                                _printDataList += '<td style="text-align:center; font-weight:bold;" colspan="4" class="cell"></td>';
                                _printDataList += '<td style="text-align:center; font-weight:bold; min_height:30px;" class="cell"></td>';
                            }
                            if (parseInt($("#ConditionShowTotalQuantity").val()) === 1) {
                                _printDataList += '<td style="text-align:center; font-weight:bold;" colspan="4" class="cell"></td>';
                                _printDataList += '<td style="text-align:center; font-weight:bold; min_height:30px;" class="cell">TOTAL</td>';
                                _printDataList += '<td style="text-align:center;" class="cell">' + totalQuantity + '</td>';
                            }
                            _printDataList += '<td style="text-align:center; font-weight:bold; padding-left:2px;" class="cell">TOTAL</td>';
                            _printDataList += '<td style="text-align:center;" class="cell">' + totalAmount.toFixed(2) + '</td>';
                            _printDataList += '<td style="text-align:left; padding-left:2px;" class="cell"></td>';
                            _printDataList += '</tr>';
                        }
                    }
                    _pages = '<p style="position:absolute; font-size:14px; font-weight:bold; top:-5px; right:0px">' + pageIndex + "／" + pageTotal + '</p>';
                    let _print_header_content_page = _print_header_content.replace('<p style="position:absolute; top:-20px; right:0px"></p>', _pages);
                    _printInnerHTML += _print_header_content_page + _print_body_header + _printDataList + _print_body_footer + _print_footer_content;
                    // 最后一页不追加分页符
                    if (index !== $("#tabData").find("tr").length - 1) {
                        _printInnerHTML += '<div style="page-break-after:always;"></div>';
                    }
                    _printDataList = '';
                    pageTotalQuantity = 0;
                    pageTotalAmount = 0;
                    pageIndex = pageIndex + 1;
                    _pages = "";
                } else {
                    _printDataList += $(this).prop("outerHTML");
                    // 正常行，非小计行
                    if (parseInt($(this).attr("rowFlag")) === 0) {
                        // 合计出本页的数量和金额
                        pageTotalQuantity += parseInt($(this).find("td").eq(6).text() === "" ? 0 : $(this).find("td").eq(6).text());
                        pageTotalAmount += parseFloat($(this).find("td").eq(8).text() === "" ? 0 : $(this).find("td").eq(8).text());
                        totalQuantity += parseInt($(this).find("td").eq(6).text() === "" ? 0 : $(this).find("td").eq(6).text());
                        totalAmount += parseFloat($(this).find("td").eq(8).text() === "" ? 0 : $(this).find("td").eq(8).text());
                    }
                    if (parseInt($(this).attr("rowFlag")) === 2) {
                        // 合计出本页的数量和金额，附加费数量不参与合计，金额参与合计
                        pageTotalQuantity += 0;
                        pageTotalAmount += parseFloat($(this).find("td").eq(5).text() === "" ? 0 : $(this).find("td").eq(5).text());
                        totalAmount += parseFloat($(this).find("td").eq(5).text() === "" ? 0 : $(this).find("td").eq(5).text());
                    }
                }
            });
            window.document.body.innerHTML = _printInnerHTML;
            window.print();
            window.document.body.innerHTML = _html_content;
            setOneTableRowColor("tabData");
        }
    },
    // 导出pdf或Excel文件
    OnExport: function () {
        // 如果没有分页符，则默认分页符在最后位置上
        if (pageBreakPoint.length === 0) {
            pageBreakPoint.push(linesHandler._rows);
        }
        $("#wxForm-post-form").attr("action", window.basePath + "/purchase/mpc/export.html");
        $("#HeaderId").val(parseInt(id));
        $("#Flag").val('3');
        $("#CurrentUserId").val(currentUserId);
        $("#GroupMode").val($.trim($("#ConditionGroupMode").val()));
        $("#SortMode").val($.trim($("#ConditionSortMode").val()));
        $("#PageBreakPoint").val(pageBreakPoint.join());
        $("#ShowTotalQuantity").val($.trim($("#ConditionShowTotalQuantity").val()));   // 是否显示合计数量
        //$("#PrintFooter").val($.trim($("#PrintFooter").val()));                      // 打印页码
        $("#FileType").val($.trim($("#ConditionFileType").val()));                     // 导出用文件格式
        $("#PrintTemplate").val($.trim($("#ConditionPrintTemplate").val()));           // 打印用模版
        $("#PrintCompanyTitle").val($.trim($("#CompanyTitle").val()));                 // 打印用公司抬头
        $("#wxForm-post-form").submit();
    }
};
//-----------------------------------------------------------------------------
// 明细处理部分
//-----------------------------------------------------------------------------
var linesHandler = {
    _rows: 0, // 共有多少行记录
    pageTotalQuantity: 0,
    pageTotalAmount: 0,
    BuildDataTable: function (result) {
        $('#tabData tbody').empty();
        // 得到数据列表
        if (result === null) {
            $('#loading').hide();
            linesHandler._rows = 0;
            return false;
        }
        let content01 = '';
        let _serial_no = '';
        let _style_no = '';
        linesHandler._rows = result.length;
        for (let i = 0; i < result.length; i++) {
            if (null !== result[i].rowFlag) {
                let sequence = i + 1;
                switch (result[i].rowFlag) {
                    case 0: // 无小计行
                        content01 += '<tr rowFlag="' + result[i].rowFlag + '" sequence="' + sequence + '">';
                        if (_serial_no !== result[i].serialNo) {
                            _serial_no = result[i].serialNo;
                            _style_no = result[i].styleNo;
                            content01 += '<td style="font-size:16px;" class="cell" _style_no="' + _style_no + '">' + formatNullData(result[i].styleNo) + '</td>';
                        } else {
                            content01 += '<td style="font-size:16px;" class="cell" _style_no="' + _style_no + '"></td>';
                        }
                        content01 += '<td style="font-size:16px;" class="cell">' + formatNullData(result[i].materialName) + '</td>';
                        content01 += '<td style="font-size:16px;" class="cell">' + formatNullData(result[i].materialCode) + '</td>';
                        content01 += '<td style="font-size:16px;" class="cell">' + formatNullData(result[i].specification) + '</td>';
                        let _colourNumber = result[i].materialColourNumber === null ? "" : ("(" + result[i].materialColourNumber + ")");
                        content01 += '<td style="font-size:16px;" class="cell">' + formatNullData(result[i].materialColourName === '无' ? null : result[i].materialColourName) + _colourNumber + '</td>';
                        //content01 += '<td style="font-size:16px;" class="cell">' + formatNullData(result[i].materialColourNumber) + '</td>';
                        content01 += '<td style="font-size:16px;" class="cell">' + formatNullData(result[i].uomName) + '</td>';
                        content01 += '<td style="font-size:16px;" class="cell">' + formatNullData(result[i].poQuantity) + '</td>';
                        if (thisPage.isPreparedBy === true) {
                            content01 += '<td style="font-size:16px;" class="cell">' + formatNullData(result[i].poUnitPrice) + '</td>';
                            content01 += '<td style="font-size:16px;" class="cell">' + (result[i].poQuantity * result[i].poUnitPrice).toFixed(2) + '</td>';
                        } else {
                            content01 += '<td class="cell"></td>';
                            content01 += '<td class="cell"></td>';
                        }
                        content01 += '<td class="cell">' + formatNullData(result[i].description) + '</td>';  // 备注
                        content01 += '</tr>';
                        // 合计出本页的数量和金额
                        linesHandler.pageTotalQuantity += result[i].poQuantity;
                        linesHandler.pageTotalAmount += (result[i].poQuantity * result[i].poUnitPrice);
                        break;
                    case 2:
                        // 正常行 附加费
                        // 表示合并前6个单元格，为小计留下空白
                        content01 += '<tr rowFlag="' + result[i].rowFlag + '" sequence="' + sequence + '">';
                        content01 += '<td class="cell"></td>';
                        content01 += '<td style="font-size:16px;" class="cell" colspan="4">' + formatNullData(result[i].description) + '</td>';
                        content01 += '<td class="cell"></td>';
                        content01 += '<td style="font-size:16px;" class="cell"></td>';
                        content01 += '<td style="font-size:16px;" class="cell"></td>';
                        if (thisPage.isPreparedBy === true) {
                            content01 += '<td style="font-size:16px;" class="cell">' + (result[i].poQuantity * result[i].poUnitPrice).toFixed(2) + '</td>';
                        } else {
                            content01 += '<td class="cell"></td>';
                        }
                        content01 += '<td class="cell"></td>';
                        content01 += '</tr>';
                        // 合计出本页的数量和金额，附加费数量不参与合计，金额参与合计
                        linesHandler.pageTotalQuantity += 0;
                        linesHandler.pageTotalAmount += (result[i].poQuantity * result[i].poUnitPrice);
                        break;
                    case 1:  // 带小计行
                        content01 += '<tr rowFlag="' + result[i].rowFlag + '" sequence="' + sequence + '">';
                        content01 += '<td class="cell" colspan="5"></td>';
                        content01 += '<td style="text-align:center; font-weight:bold; font-size:16px;" class="cell">小计数量</td>';
                        content01 += '<td style="font-size:16px;" class="cell">' + result[i].poQuantity + '</td>';
                        content01 += '<td style="text-align:center; font-weight:bold; font-size:16px;" class="cell">小计金额</td>';
                        content01 += '<td style="font-size:16px;" class="cell">' + result[i].poUnitPrice.toFixed(2) + '</td>';
                        content01 += '<td style="font-size:16px;" class="cell"></td>'; // 备注
                        content01 += '</tr>';
                        break;
                    default:  // 附加费小计行
                        content01 += '<tr rowFlag="' + result[i].rowFlag + '" sequence="' + sequence + '">';
                        content01 += '<td class="cell" colspan="4"></td>';
                        content01 += '<td style="text-align:center; font-weight:bold; font-size;16px;" class="cell">小计数量</td>';
                        content01 += '<td class="cell"></td>';
                        content01 += '<td style="text-align:center; font-weight:bold; font-size:16px;" class="cell">小计金额</td>';
                        content01 += '<td style="font-size:16px;" class="cell">' + (result[i].poUnitPrice === null ? '' : result[i].poUnitPrice.toFixed(2)) + '</td>';
                        content01 += '<td class="cell"></td>'; // 备注
                        content01 += '</tr>';
                        break;
                }
                $('#tabData tbody').append(content01);
                content01 = '';
            }
        }

        // 合计行
        if (parseInt($("#ConditionPrintTemplate").val()) === 1) {
            content01 += '<tr style="height:50px;">';
            content01 += '<td style="text-align:center; font-weight:bold;" class="cell"></td>';
            if (parseInt($("#ConditionShowTotalQuantity").val()) === 0) {
                content01 += '<td style="text-align:center; font-weight:bold; font-size:16px;" colspan="4" class="cell">' + taxRateText + '</td>';
                content01 += '<td style="text-align:center; font-weight:bold; font-size:16px; min_height:30px;" class="cell"></td>';
                content01 += '<td style="text-align:center; font-weight:bold; font-size:16px; min_height:30px;" class="cell"></td>';
            }
            if (parseInt($("#ConditionShowTotalQuantity").val()) === 1) {
                content01 += '<td style="text-align:center; font-weight:bold; font-size:16px;" colspan="4" class="cell">' + taxRateText + '</td>';
                content01 += '<td style="text-align:center; font-weight:bold; font-size:16px; min_height:30px;" class="cell">合计数量</td>';
                content01 += '<td style="text-align:center; font-size:16px;" class="cell">' + linesHandler.pageTotalQuantity + '</td>';
            }
            content01 += '<td style="text-align:center; font-weight:bold; font-size:16px; padding-left:2px;" class="cell">合计金额</td>';
            if (thisPage.isPreparedBy === true) {
                content01 += '<td style="text-align:center; font-size:16px;" class="cell">' + linesHandler.pageTotalAmount.toFixed(2) + '</td>';
            } else {
                content01 += '<td style="text-align:center; font-size:16px;" class="cell"></td>';
            }
            content01 += '<td style="text-align:left; font-size:16px; padding-left:2px;" class="cell"></td>';
            content01 += '</tr>';
        }
        if (parseInt($("#ConditionPrintTemplate").val()) === 2) {
            content01 += '<tr style="height:50px;">';
            content01 += '<td style="text-align:center; font-weight:bold;" class="cell"></td>';
            if (parseInt($("#ConditionShowTotalQuantity").val()) === 0) {
                content01 += '<td style="text-align:center; font-weight:bold;" colspan="4" class="cell"></td>';
                content01 += '<td style="text-align:center; font-weight:bold; min_height:30px;" class="cell"></td>';
            }
            if (parseInt($("#ConditionShowTotalQuantity").val()) === 1) {
                content01 += '<td style="text-align:center; font-weight:bold;" colspan="4" class="cell"></td>';
                content01 += '<td style="text-align:center; font-weight:bold; font-size:16px; min_height:30px;" class="cell">AMOUNT</td>';
                content01 += '<td style="text-align:center; font-size:16px;" class="cell">' + linesHandler.pageTotalQuantity + '</td>';
            }
            content01 += '<td style="text-align:center; font-weight:bold; font-size:16px; padding-left:2px;" class="cell">AMOUNT</td>';
            if (thisPage.isPreparedBy === true) {
                content01 += '<td style="text-align:center; font-size:16px;" class="cell">' + linesHandler.pageTotalAmount.toFixed(2) + '</td>';
            } else {
                content01 += '<td style="text-align:center; font-size:16px;" class="cell"></td>';
            }
            content01 += '<td style="text-align:left; padding-left:2px;" class="cell"></td>';
            content01 += '</tr>';
        }
        $('#tabData tbody').append(content01);
        linesHandler.pageTotalQuantity = 0;
        linesHandler.pageTotalAmount = 0;

        setOneTableRowColor("tabData");
        $('#loading').hide();
    },
    InsertPageBreak: function () {
        if (pageBreakPoint.length > 0 && pageBreakPoint[0] === linesHandler._rows) {
            pageBreakPoint = [];
        }
        if ($("#tabData tr.row__clicked").length > 0) {
            // 首先设置款号
            let _next_row = $("#tabData tr.row__clicked").next("tr");
            if (_next_row.find("td").eq(0).text() === '') {
                _next_row.find("td").eq(0).text($("#tabData tr.row__clicked").find("td").eq(0).attr("_style_no"));
            }
            // 插入分割符号
            let content = $('<tr class="page-break"><td colspan="11" style="text-align:center;"><p>-- 分页符 --</p></td></tr>');
            $("#tabData tr.row__clicked").after(content);
            // 增加分页点
            pageBreakPoint.push(parseInt($("#tabData tr.row__clicked").attr("sequence")));
        } else {
            ShowErrorMessagePanel('请选择要进行分页的位置。');
            $(".error-msg").css({top: '2px'});
        }
    },
    DeletePageBreak: function () {
        if ($("#tabData tr.row__clicked").length > 0) {
            if ($("#tabData tr.row__clicked").next("tr").length && $("#tabData tr.row__clicked").next("tr").hasClass("page-break")) {
                // 首先设置款号
                let _next_row = $("#tabData tr.row__clicked").next("tr").next("tr");
                if ((_next_row.find("td").eq(0).text() !== '') && ($("#tabData tr.row__clicked").find("td").eq(0).attr("_style_no") === _next_row.find("td").eq(0).attr("_style_no"))) {
                    _next_row.find("td").eq(0).text('');
                }
                $("#tabData tr.row__clicked").next("tr").remove();
                // 删除分页点
                pageBreakPoint.splice($.inArray(parseInt($("#tabData tr.row__clicked").attr("sequence")), pageBreakPoint), 1);
            } else {
                ShowErrorMessagePanel('请选择要删除的分页符所在位置。');
                $(".error-msg").css({top: '2px'});
            }
        } else {
            ShowErrorMessagePanel('请选择要删除的分页符所在位置。');
            $(".error-msg").css({top: '2px'});
        }
    }
};
//-----------------------------------------------------------------------------
// 页面初始化
//-----------------------------------------------------------------------------
function onPageReady() {
    // 从url得到相关参数
    id = jQuery.url.param("id");
    currentUserId = jQuery.url.param("currentUserId");
    thisPage.OnPageLoad();
}

function onPageResize() {

}